BubbleUPnPServer unter Debian Wheezy installieren
Die Installation von BubbleUPnPServer, setzt eine vorhandene Java Installation voraus. Das kann man einfach mit folgendem Befehl prüfen.
root:~# java -version
java version "1.7.0_55"
Java(TM) SE Runtime Environment (build 1.7.0_55-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)
In unserem Fall werden wir den BubbleUPnPServer nach /opt
installieren. Zuerst gehen wir als root nach /opt
und erstellen uns ein Verzeichnis /opt/BubbleUPnPServer-0.7
. Dann wechseln wir in das soeben erstellte Verzeichnis und laden uns den Server und auch das ffmpeg Paket herunter und entpacken es.
root:~# cd /opt
root:/opt# mkdir BubbleUPnPServer-0.7
root:/opt# cd BubbleUPnPServer-0.7/
root:/opt/BubbleUPnPServer-0.7# wget http://www.bubblesoftapps.com/bubbleupnpserver/0.7/BubbleUPnPServer-0.7.zip
root:/opt/BubbleUPnPServer-0.7# wget http://www.bubblesoftapps.com/bubbleupnpserver/ffmpeg.zip
root:/opt/BubbleUPnPServer-0.7# unzip BubbleUPnPServer-0.7.zip && rm BubbleUPnPServer-0.7.zip
root:/opt/BubbleUPnPServer-0.7# unzip ffmpeg.zip && rm ffmpeg.zip
Als nächsten Schritt öffnen wir die Datei launch.sh
und bearbeiten diese.
root:/opt/BubbleUPnPServer-0.7# vi launch.sh
#!/bin/sh
PIDFILE="/opt/bubble/bubble.pid"
# Optional, you can bind the BubbleUPnP Server to a defined interface
#ARGS="-lanIp 192.168.1.1"
HOMEDIR="$(dirname ${0})"
cd ${HOMEDIR}
if [ "x$JAVA_HOME" != "x" ]; then
JAVA="$JAVA_HOME/bin/java"
else
JAVA="java"
fi
# to make sure ffmpeg is found and used if present in start directory
export PATH=.:${PATH}
# -Xss256k: thread stack size. 256K reduces per-thread memory usage
# and may prevent "java.lang.OutOfMemoryError: unable to create new native thread" on some systems
# -Djava.awt.headless=true: required for image transcoding to work on headless systems (eg no X-Window libraries)
exec "${JAVA}" -Xss256k -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPServer.jar $ARGS $* >/dev/null 2>&1 &
echo $! >$PIDFILE
Nun werden wir die Datei launch.sh
ausführbar machen.
root:/opt/BubbleUPnPServer-0.7# chmod 755 launch.sh
Als nächstes erstellen wir uns ein Start/Stop Skript /etc/init.d/bubble
.
root:/opt/BubbleUPnPServer-0.7# vi /etc/init.d/bubble
#!/bin/sh
# chkconfig: 345 99 10
# description: Startup/shutdown script for BubbleUPnPServer daemon
#
# Based on the MiniDLNA script by Justin Maggard
# Modified for BubbleUPnPServer by Marko Schulz <info@tuxnet24.de>
#
### BEGIN INIT INFO
# Provides: bubble
# Required-Start: $network $local_fs $remote_fs
# Required-Stop:: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Startup/shutdown script BubbleUPnP Server
### END INIT INFO
BUBBLEUPNP=/opt/bubble/launch.sh
PIDFILE=/opt/bubble/bubble.pid
UID="tux"
GID="tux"
ARGS=""
test -f $BUBBLEUPNP || exit 0
. /lib/lsb/init-functions
case "$1" in
start) log_daemon_msg "Starting bubble" "bubble"
start-stop-daemon --start --quiet --chuid $UID:$GID --pidfile $PIDFILE --startas $BUBBLEUPNP -- $ARGS $LSBNAMES
log_end_msg $?
;;
stop) log_daemon_msg "Stopping bubble" "bubble"
start-stop-daemon --stop --quiet --chuid $UID:$GID --pidfile $PIDFILE
log_end_msg $?
;;
restart|reload|force-reload)
log_daemon_msg "Restarting bubble" "bubble"
start-stop-daemon --stop --retry 5 --quiet --chuid $UID:$GID --pidfile $PIDFILE
start-stop-daemon --start --quiet --chuid $UID:$GID --pidfile $PIDFILE --startas $BUBBLEUPNP -- $ARGS $LSBNAMES
log_end_msg $?
;;
status)
status_of_proc -p $PIDFILE $BUBBLEUPNP bubble && exit 0 || exit $?
;;
*) log_action_msg "Usage: /etc/init.d/bubble {start|stop|restart|reload|force-reload|status}"
exit 2
;;
esac
exit 0
Nun werden wir das Skript /etc/init.d/bubble
ausführbar machen.
root:/opt/BubbleUPnPServer-0.7# chmod 755 /etc/init.d/bubble
Damit wir es beim Update es leichter haben, setzen wir ein Symlink auf das Verzeichnis BubbleUPnPServer-0.7
. Will man später die Version 0.8 installieren, kann das in einem separaten Verzeichnis BubbleUPnPServer-0.8
passieren. Um die Version 0.8 dann Live zu schalten, ändert man dann einfach den Symlink bubble auf die 0.8 Version.
root:/opt/BubbleUPnPServer-0.7# cd ..
root:/opt# sudo ln -s BubbleUPnPServer-0.7 bubble
Wenn alles getan ist (…trinke ein Bier), starten wir den BubbleUPnPServer wie folgt.
root:/opt# service bubble start
[ ok ] Starting bubble: bubble.
Damit der BubbleUPnPServer auch bei Booten startet, verwenden wir update-rc.d um in den Default Runlevel entsprechende Symlinks zu setzen.
root:/opt# update-rc.d bubble defaults
Um den neu installieren BubbleUPnPServer zu konfigurieren, gehen wir einfach auf folgende Adresse.
https://<SERVERADDR>:58051/